package com.zlkj.pro.modular.admin.model.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.zlkj.pro.modular.business.model.dto.MyBaseRequest;
import lombok.*;

import java.util.Date;

@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class UserDTO extends MyBaseRequest {

    /**
     * 主键id
     */
    private Long userId;
    /**
     * 姓名
     */
    private String realName;
    /**
     * 昵称
     */
    private String nickName;
    /**
     * 账号
     */
    private String account;
    /**
     * 密码
     */
    private String password;
    /**
     * 头像
     */
    private Long avatar;
    /**
     * 生日
     */
    private Date birthday;
    /**
     * 性别：M-男，F-女
     */
    private String sex;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 手机
     */
    private String phone;
    /**
     * 电话
     */
    private String tel;
    /**
     * 是否是超级管理员：Y-是，N-否
     */
    private String superAdminFlag;
    /**
     * 状态：1-正常，2-冻结
     */
    private int statusFlag;
    /**
     * 最后登陆IP
     */
    private String lastLoginIp;
    /**
     * 最后登陆时间
     */
    private Date lastLoginTime;
    /**
     * 删除标记：Y-已删除，N-未删除
     */
    private String delFlag;

    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 创建人
     */
    private Long createUser;
    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 更新人
     */
    private Long updateUser;


    //代理商id
    private Long agentId;
    //代理商名称
    private String agentName;
    //角色id
    private Long roleId;
    //角色名称
    private String roleName;

    //经理 id
    private Long leaderId;

    //短信验证码
    private String smsCode;

    /**
     * 原密码
     */
    private String oldPassword;

    /**
     * 员工id （报表筛选使用）
     */
    private Long selectUserId;

    /**
     * 目标员工id
     */
    private Long targetUserId;

    // 地域
    private String region;
    //微信code
    private String code;

    // 客户创建人筛选roleId
    private Long createUserRoleId;

    private Integer manageFlag;

}
